Skip to content

feat: add immutable deployment planning#70

Merged
roodboi merged 9 commits into
mainfrom
codex/hack-869-immutable-deployment-plan
Jul 15, 2026
Merged

feat: add immutable deployment planning#70
roodboi merged 9 commits into
mainfrom
codex/hack-869-immutable-deployment-plan

Conversation

@roodboi

@roodboi roodboi commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

What changed

  • add a read-only fclt deploy plan command for one exact instruction/snippet and one exact Codex destination
  • produce an immutable, content-addressed JSON plan binding source/current/desired/state hashes, ownership, adapter version, loss report, secret references, exact reads/writes/removals, verification, and rollback target
  • persist collision-safe physical destination identity and validate all state, snapshot, rollback, and target paths before reuse
  • harden state enumeration and file reads with descriptor-anchored, no-follow, bounded, stable reads
  • document the planning boundary and roadmap; there is intentionally no apply executor

Why

HACK-869 establishes a reviewable and reproducible deployment-planning boundary before HACK-802 can promote portable capabilities to a remote Codex home. It fails closed on stale or tampered inputs, lossy translation, unsupported adapters, ambiguous ownership, path escape, symlink races, state corruption, and rollback drift.

Verification

  • focused deployment-plan suite: 31/31
  • native safe-openat + deployment-plan suite: 38/38, 158 assertions
  • real Darwin x86_64 under Rosetta: 31/31, 141 assertions
  • Alpine/musl, network disabled, read-only mount: 38/38, 163 assertions
  • type-check, Ultracite, build, compiled binary verification (2.25.4), and pack dry-run pass
  • exact branch metadata uses the GitHub noreply identity; public-content/privacy review found no personal paths, credentials, secrets, or private workspace content

The full local repository run completed 749 passing tests; 22 unchanged audit tests exceeded their fixed 4.5/5-second timing budgets on the heavily loaded development host. A focused rerun confirmed timing-budget failures in unchanged audit tests, not deployment-plan behavior. Hosted CI is the clean-environment merge gate.

Safety boundary

This PR adds planning only. It does not install, render, apply, write a tool home, issue credentials, or mutate production state.


View with Codesmith Autofix with Codesmith
Need help on this PR? Tag /codesmith with what you need. Autofix is disabled.

@linear-code

linear-code Bot commented Jul 15, 2026

Copy link
Copy Markdown

HACK-869

@roodboi

roodboi commented Jul 15, 2026

Copy link
Copy Markdown
Contributor Author

@codex review exact head 9fb38ce. Please review the immutable read-only deployment-plan boundary, state/path/rollback integrity, descriptor-based TOCTOU protections, cross-platform behavior, and public-repo privacy. There is intentionally no apply executor.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 9fb38cefbe

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/deployment-plan.ts
@roodboi

roodboi commented Jul 15, 2026

Copy link
Copy Markdown
Contributor Author

@codex review exact head 0cc9077. The only change since the prior reviewed head is a one-line test assertion accepting the two platform-specific fail-closed path-race messages; actual Alpine/musl focused proof is 31/31, 146 assertions, and the no-mutation/symlink rejection checks remain intact. Please rereview the exact head.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Already looking forward to the next diff.

Reviewed commit: 0cc9077fee

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@roodboi
roodboi merged commit ae3568c into main Jul 15, 2026
3 checks passed
@roodboi
roodboi deleted the codex/hack-869-immutable-deployment-plan branch July 15, 2026 23:09
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 2.28.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant